Various industry-standard protocols have been developed to facilitate communication between computers and peripherals. In most of these arrangements, multiple devices are coupled to and communicate through some form of bus, which may be one central bus to which all items are coupled, multiple bus sections coupled in a daisy-chain configuration, or some other arrangement. Some of these standards permit a device to draw some or all of its operating power from the bus under certain conditions.
One example is the IEEE 1394 communication protocol, promulgated by the Institute of Electrical and Electronic Engineers. This standard categorizes devices according to the manner in which they handle operating power. In this regard, some devices generate all of their own operating power, plus some excess power which they supply to the bus. Other devices generate their own operating power, but do not supply any excess power to the bus. Still other devices draw some or all of their operating power from the bus.
With respect to this latter type of device, the IEEE 1394 standard permits each such device to draw up to 3 watts of operating power from the bus. If the device needs additional operating power, it must first submit a request for additional power across the bus while drawing no more than 3 watts, and must specify how much additional power it wants. A bus master which manages the bus will then determine if there are other devices on the bus that are generating sufficient excess power to meet the need of the requesting device. If so, then the requesting device will be granted authorization to draw that additional power from the bus. Otherwise, the requesting device will be denied authorization to draw additional power from the bus, and will typically not become fully operational.
When each device is powered up, or when a reset occurs on the bus, the device reports to the bus master which of several categories it falls in with respect to use of bus power, so that the bus master knows whether some devices are supplying excess power to the bus which other devices can be authorized to utilize, and knows the extent to which some devices are drawing the excess power from the bus. In this regard, each device typically knows it is permanently allocated to a single predetermined power utilization category, reflecting how it was designed to operate.
While existing approaches of this type have been generally adequate for their intended purposes, they have not been satisfactory in all respects. As one example, and as noted above, if a device requests additional power from the bus but it is not available, the device will typically not become fully operational. This can annoy the user, and create dissatisfaction with the manufacturer of the device.